使用JavaScript源映射(.map文件) | 您所在的位置:网站首页 › 地图 js文件 › 使用JavaScript源映射(.map文件) |
摘要
本教程将介绍如何在JavaScript中使用源映射(.map文件)。 内容最近,我注意到一些JavaScript库(如Angular)随附了一个以.js.map为扩展名的文件,这引发了几个问题: 这是用来做什么的?为什么Angular团队要提供一个.js.map文件? 作为JavaScript开发人员,我应该如何使用angular.min.js.map文件? 我需要关心为我的JavaScript应用程序创建.js.map文件吗? 它是如何创建的?我查看了angular.min.js.map文件,发现其中充满了奇怪格式的字符串,所以我认为它不是手动创建的。件下面是最终被大家认可的答案: 源映射(source maps)文件适用于已被压缩的JavaScript和CSS(现在也适用于TypeScript)文件。当你将一个文件进行压缩(例如angular.js文件),它会将数千行的易读代码变为只有几行的难以理解的代码。在将代码部署到生产环境时,最好使用压缩后的代码而不是完整的、未压缩的版本。在应用程序处于生产环境并出现错误时,源映射文件将帮助你查看原始版本的代码。如果没有源映射文件,任何错误信息看起来都会晦涩难懂。 对CSS文件也是一样的。一旦将Sass或Less文件编译为CSS,它看起来完全不同于原始形式。如果启用源映射,你就可以查看文件的原始状态,而不是修改后的状态。 因此,按照先后顺序回答你的问题: 源映射文件的作用是解析压缩后的代码。 作为开发人员,你可以在调试生产环境的应用程序时使用它。在开发模式下,你可以使用完整版本的Angular,而在生产环境中,你将使用压缩版本。 如果你希望更容易地调试生产代码,那么是的,你应该关心创建js.map文件。 它是在构建时由构建工具生成的。有一些构建工具可以像处理其他文件一样处理.js.map文件。希望这有所帮助。 参考答案:只关注最后一个问题:如何创建源映射文件。下面是一些可以生成源映射的构建工具: Grunt,使用插件:grunt-contrib-uglify Gulp,使用插件:gulp-uglify Google Closure,使用参数:--create_source_map 参考答案:源映射文件(source map files)将混淆(压缩)后的文件映射为未混淆(未压缩)的文件。如果在未混淆文件中进行了更改,这些更改将自动应用到混淆后的文件中。 参考答案:开发者可以按照以下步骤使用源映射文件: 不要在index.html文件中链接.js.map文件(没有必要)。 当使用好的混淆工具时,被混淆的.js文件会添加一条注释: //# sourceMappingURL=yourFileName.min.js.map 该注释将连接你的.map文件。 在Chrome浏览器中,打开开发者工具,切换到"Sources"选项卡。你会看到"sources"文件夹,其中包含未混淆的应用程序文件。 希望这对你有帮助! |
CopyRight 2018-2019 实验室设备网 版权所有 |